584e52b60cb0b3e59adfd85d0b548fdabef92acc,plugins/groovy/src/org/jetbrains/plugins/groovy/lang/parser/parsing/statements/typeDefinitions/members/AnnotationMember.java,AnnotationMember,parse,#PsiBuilder#,31

Before Change



    //type definition
    PsiBuilder.Marker typeDeclStartMarker = builder.mark();
    if (TypeDeclarationStart.parse(builder)) {
      typeDeclStartMarker.rollbackTo();

      GroovyElementType typeDef = TypeDefinition.parse(builder);
      if (WRONGWAY.equals(typeDef)) {
        return WRONGWAY;
      }
      return typeDef;
    }
    typeDeclStartMarker.rollbackTo();


    PsiBuilder.Marker varDefMarker = builder.mark();

    //typized var definition
    //todo: check for upper case type specification 
    if (WRONGWAY.equals(TypeSpec.parse(builder))) {
      varDefMarker.rollbackTo();
      return WRONGWAY;
    }

    GroovyElementType varDef = VariableDefinitions.parse(builder, true);
    if (!WRONGWAY.equals(varDef)) {
      varDefMarker.done(varDef);
      return varDef;
    }
    varDefMarker.rollbackTo();

After Change


    GroovyElementType typeDef = TypeDefinition.parse(builder);

    if (!WRONGWAY.equals(typeDef)) {
      typeDeclStartMarker.drop();
      return typeDef;
    } else {
      typeDeclStartMarker.rollbackTo();
    }

    PsiBuilder.Marker declMarker = builder.mark();